Right hand margin control system

ABSTRACT

A system which accepts an input medium and provides an output copy having a right hand edge which is controlled by means of a variable control zone. The control zone may be made 1) relatively wide with a resultant extremely ragged right hand edge; 2) quite narrow with a resultant slightly ragged right hand edge; or 3) equal to a value of one escapement unit with a resultant even right hand edge. The system is operable such that in the event that more than one word space occurs in the zone, the word space nearest to the right hand side of the zone which corresponds to the end of the measure is chosen. No operator intervention is necessary to achieve the desired result after the system has been started.

1 51 Sept. 11, 1973 RIGHT HAND MARGIN CONTROL SYSTEM Inventor: David A. Bishop, Austin, Tex.

International Business Machines Corporation, Armonk, NY.

Dec. 23, 1970 Assignee:

References Cited UNITED STATES PATENTS 3,631,957 1/1972 Terry.... 197/19 3,483,527 12/1969 Terry ..340/172.5

Primary Examiner-Ernest T. Wright, Jr. Attorney-Hanifin & Jancin and James H. Barksdale, Jr.

[5 7 ABSTRACT A system which accepts an input medium and provides an output copy having a right hand edge which is controlled by means of a variable control zone. The control zone may be made 1) relatively wide with a resultant extremely ragged right hand edge; 2) quite narrow with a resultant slightly ragged right hand edge; or 3) equal to a value of one escapement unit with a resultant even right hand edge. The system is operable such that in the event that more than one word space occurs in the zone, the word space nearest to the right hand side of the zone which corresponds to the end of the measure is chosen. No operator intervention is necessary to achieve the desired result after the system has been started.

4 Claims, 5 Drawing Figures 3 41 SPACE L 5 P012; F -1 T COUNT m??? a .COMPARE SPACE $111111 307TRESET r| s ML VCOUNTER2 MEASURE L 1 1 MEASURE A REGISTER MEASURE ZONE 5 REGISTER a MINUS COMPARE ZONE WI COUNTER 12' 21 28 2| 20 {91 19/,0011111511 12 21 0111111111 6 SPACE L SPACE 1111111111 K EXPAND SIZE 1 53 v 59 49c 5a SPACE 1 I COUNTER 1s 4s 1 41 1111 48 l. 60

5 61 MINIMUM 1 Patented Sept. 11, 1973 3,757,921

2 Sheets-Sheet 1 SPACE i V I2 4 5 1 9 H POINT OF OR LAST COUNT CURRENT I COMPARE sPACE F UNITS v 4 START 30?TRESET JIs a ,CCOUNTERZ SMEASURE s0 DIAL 5 v COUNTER 2 MEASURE 25 MEASURE Q REGISTER DIAL I24 16 36 25 I1 l I 27 26 I MEASURE E 5 MINUs T COMPARE 28 ZONE W'DTH COUNTER |2 2| P 2I 20 .I Isk/ COUNTER 1252i 29 L CARRIER SPACE SPACE RETURN EXPAND sIzE 49 g r A I 58 X sPACE COUNTER J 46 45 f E $8 47 DIAL 6| INVENTOR MINIMUM I SPACE DAVID A. BISHOP ATTORNEY Patented Sept. 11, 1973 3,757,921

I 2 Sheets-Sheet 2 INPUT LINE OUTPUT LINE LEFT I RIGHT LEFT RIGHT MARGIN MARGIN MARGIN MARGIN ZONE 1 ZONE I WIDTH I I WIDTH LINEl IIWORDA E] II N I 0] IWORDA IE] I- 1 I I I I I FIG. 2

I I I I I IIIH MIEE EF mwnm i I E I 5 FIG. 3 l

I I I I I I IIIH 'MIIEIIZFI M13113: I I I I I I i I I @1551 m 113 IE I I I III I i 1 1 RIGHT HAND MARGIN CONTROL SYSTEM BACKGROUND OF THE INVENTION hand edge are controlled. While in classic composing rigid control of the right hand edge of the output copy is required, there are many applications in which a slightly ragged right hand edge is acceptable. There have been many systems designed to print output from an input medium with a ragged right hand edge such that there is less of a requirement for operator intervention in the form of hyphenation decisions during printout. This is the prime reason for utilizing a system in which the right hand edge of the output copy is not in exact alignment. However, prior to the present invention, there have been no systems in which the operator had a choice as to the degree of raggedness permissible on the right hand edge, particularly where the degree could be varied from extreme raggedness to uniformity of right hand edges (flush right) in the absence of operator intervention for hyphenation decisions.

U.S. Pat. No. 3,339,470 to OBrien, et al., provides normal justification in which the textual content of the input lines is identical line-for-line with the textual con I tent of the output lines. The only difference between input and output is that the output line is justified to the right hand margin and the spaces to fill up to the right hand margin are equally distributed to interword spacing. The OBrien patent is, of course, a typical justification-system. I

U.S. Pat. No. 3,386,552 to Lorber,et al., provides a system in which a carrier return will automatically occur at the first word space on the far side of a right hand point set into the system by the operator. There is no variable zone in the Lorber system. The Lorber system also provides a hyphenation mode in which. the input tape has'the words thereon hyphenated by the input operator at every syllable and a carrier return will occur on the first hyphen on the right of the right hand line. Additional modes of sentence, paragraph, and character are also provided. As above noted, there is',

' however, no provision inv the Lorber system of a variable zone which the operator may varyto control the raggedness of the right hand edge. The operator can copy. There is in the Adams system no provision for the automatic setting of the zone by the operator with substantially unattended operation of the system during the print-out as is provided in the subject invention. Instead, in the Adams system the operator must go completely through the input tape marking the line endings prior to beginning the printing operation.

U.S. Pat. No. 3,307,154 to Garth describes a typical not zone system. Garth provides a zone which determines where the line-ending point is to occur. However, this zone is related to a multiple of the number of interword spaces in order -to control the ultimate size of these interword spaces upon justification of the line and thus, this zone varies for each line. There is no provision for the operator to control the line-ending point within a zone that is constant for each line in order to control the raggedness of the right hand edge.

SUMMARY OF THE INVENTION Briefly, a system is provided which accepts input data from an input medium and converts the input data to only control the earliest point at which a carrier return can occur.

U.S. Pat. No. 3,340,986 to Adams provides a right hand zone. This zone, however, is not controlledby the machine, but is a visual zone used by the operator viewer. The viewer runs the input tape past a viewingstation and makes decisions as to what the right hand printed output. The degree of evenness of the right hand edge of the printed output is controlled by the operator setting a zone during the set-up operation. During setup the operator sets the measure, the zone width and the minimum interword space size. First, second, and third counters are provided which hold the running count from the left hand margin, the count from the left hand margin at the time of the last word space, within the measure, and the count of the number of word spaces up to the last word space that falls within the measure,'respectively. A subtract-hold unit is also utilized to hold an amount equal to the measure minus the zone width which is the left hand side of the zone. In addition, a justification computer is used to partially justify lines where the last word space within the measure does not fall within the zone. A register is used in conjunction with the second counter and the justification computer for holding a multiple of the zone width which is also utilized in partially justifying lines where the last word space within the measure does not fall within the zone.

When a word space code is read from the input medium, the contents of the first counter are compared against the measure. If the word space is'to the right of the measure, the contents of the subtract-hold unit are compared with the contents of the second counter to determine if the previous word space within the measure was in the zone. If the previous word space within the measure is in the zone which is the case when the contents of the second counter are greater than" the count in the subtract-hold unit, the previous word space within the measure is the point of an automatic carrier return. If less, the zone width is added to the second counter and to the register holding a multiple of the zone width originally dialed in by the. operator and a comparison is again made. This operation is remargin should look like and marks the tape with a'machine readable code to'end a line at a selected point which falls between two vertical lines which designate the zone. This is facilitated by having an input tape, having measured lengths on it which can be directly correlated to the length of a line of print on the output peated until the contents of the secondcounter are greater than the count in the subtract-hold unit. Thereafter, the total count stored in the register is utilized in computing a partial justification solution where the total count is distributed evenly among the interword spaces in the line with any remainder being applied to the interword spaces closest the left margin in a predetermined manner. The resultant partial justification of some of the lines will maintain the original degree of randomness of the lines while the degree of raggedness will be determined by the zone width. Thus, reading of the input medium always continues until the measure is overrun and the system then drops back to the previous word space location within the measure which assures that the word space within the measure nearest the edge of the measure will, in the event of multiple spaces in the zone, be the word space which ends the line.

BRIEF DESCRIPTION OF THE DRAWING FIG. 1 is a block diagram of the subject novel system;

FIG. 2 illustrates the operation of the system when a word on the input line spans the right hand side of the control zone;

FIG. 3 illustrates the operation of the system when two word spaces occur in the zone and a word spans the right hand side of the control zone;

FIG. 4 illustrates the operation of the system when a word space is at the right hand side of the control zone; and

FIG. 5 illustrates the operation of the system when l) the zone is chosen to be relatively narrow such that no word space occurs within the zone and/or 2) a word completely overlaps the zone.

DESCRIPTION OF THE PREFERRED EMBODIMENT Referring to FIG. 1, there is shown an overall system which comprises the subject invention where the printing of text is to be under the control of a previously prepared input medium. The printing of material may follow the complete reading of a line from the input medium with justification or other modifications being made to the line prior to the printing. In this case, justification occurs automatically so long as the justification can be accomplished by appropriate interword spacing and in some cases, interletter spacing. These techniques are, of course, well known.

Reference to an input medium includes paper tapes, magnetic cards, magnetic tapes, punched cards, etc., carrying a sequence of codes which have been recorded by special typewriters available for this purpose or other suitable means.

The record reader, justification computer, and printer referred to herein may be of the form of any conventional apparatus readily available, or may take the form described in US. Pat. No. 3,483,527.

In FIG. 1 there is shown a count line 1 to which counts from the input medium are applied. These counts will correspond, in the event of proportional spacing, to the width of the characters read from the input medium and word spaces read. In the event that proportional spacing is not used, the counts will correspond to the characters read and word spaces. These counts are input into a current units counter 2 which is set to zero at the beginning of each line by application of a carrier return signal on lines 31 and 30 or by a startup signal when the input medium or record reader is turned on. The contents of the current units counter 2 are applied along line 4 to an AND gate 5. The other input to the AND gate 5 is along line 3 from a word space line. The word space line is brought up anytime a word space code is read from the input medium, and is also applied along line 46 to AND gate 45. This will result in one count being addedto the count in word space counter 47 if an indication that the measure has not been overrun results in line 44 being brought up. Word space counter 47 is reset upon a start-up or carrier return signal applied along line 48. Thus, each time a word space code is read, the contents of counter 2, which are equal to the number of counts from the left hand margin, are applied along lines 6 and 7 to the AND gate 9 and compare unit 8, respectively. The other input to the compare unit 8 is along line 25 from measure register 22. The measure register 22 holds a number corresponding to the setting selected by the operator at the beginning of the printing operation. This will correspond to the desired measure. The operator also sets 1) a zone width dial to control the width of the zone and this zone width is stored in zone register 23, and 2) a minimum space dial to control the minimum interword space size in terms of escapement units and this interword space size is stored in register 60 (which is designated minimum space).

In compare unit 8 a comparison is made between the contents of the current units counter 2 and the measure set on the measure dial and stored in register 22. In the event that the contents of the current units counter 2 are equal to or less than the measure, which implies that the measure has not been exceeded, line 10 is brought up and the contents of counter 2 which are applied along line 6 to AND gate 9 are gated along line 11 through OR gate 42 and along line 43 into counter 12 and stored. Counter 12 thus stores the current contents of counter 2 which is the point of the last word space within the measure. The point of last word space within the measure is applied along line 13 to AND gate 14 which receives its other input along line 15 from compare unit 8.

Line 15 will be brought up in the event that the contents of counter 2 are greater than the measure. This implies that the measure has been overrun. In the event that the measure has been overrun, the contents of counter 12 are gated through AND gate 14 along line 16 into a compare unit 17. Line 10 is not brought up, and therefore, the contents of counter 12 do not include the count for a word which overruns the measure. The compare unit 17, receives its other input along line 20 from a subtract-hold unit 21 which is loaded initially with a count corresponding to the measure minus the zone width. The measure minus the zone width corresponds to the part of the measure on the left hand side of the zone. The loading of this subtract-hold unit 21 is accomplished upon a carrier return applied along line 59 bringing line 29 up, or upon startup. When line 29 is up, the contents of measure register 22 along line 24 and zone width register 23 along line 27 are applied through AND gate 26 and along line 28 to the subtract and hold unit 21. In the event that upon a comparison in compare unit 17, the contents of 4 counter 12, which corresponds to the point that the last word space within the measure occurred, are greater than the contents of the subtract and hold unit 21 which corresponds to the left hand side of the zone, line 18 is brought up and this condition signals a justification computer 58 (which is designated space size"). In this instance the line ending is preserved and a carrier return will occur at the point of the last word space within the measure.

However, in the event that upon a comparison in compare'unit 17, the contents of counter 12 are equal to or less than the contents of subtract and hold unit 21, line 19 is brought up. When this occurs, the zone width stored in register 23 is applied along line 51 to AND gate 52 and thereafter to space expand register 54 along line 53. Space expand register-54, which is reset along line 49 upon startup or the occurrence of a carrier return, is used for storing multiples of the zone value stored in register 23. The multiple of the zone width stored in register 54 will depend on when line 18 next comes up indicating that the contents of counter 12, which correspond to the point that the last word space within the measure occurred, are greater thanthe contents of subtract and hold unit 21. The contents of register 23 are repeatedly added to register 54 until line 18 is brought up. That is, the multiple 'will depend on the number of times the contents of register 23 are applied along line 51 to AND gate 52 and along lines 53 and 41, through OR gate 42, and along line 43 to counter 12 for the contents therein to be greater than the contents of unit 21, in order to bring line 18 up. A comparison is made by compare unit 17 each time the zone width is counted by counter 12 and stored in register 54. For each such comparison the output of counter 12 is applied along line 13 to AND gate 14 and along line 16 to compare unit 17. The other input to AND gate 14 is along line from compare unit 8 indicating that the contents of counter 2 are greater than the contents of register 22.

In this case when line 18 is brought up, justification computer 58, which receives the multiple of the contents originally stored in register 23 (the multiple now stored in register 54) from register 54 along line 55 and other inputs along lines 50 and 61, calculates the interword spacing and computes a partial justification solution. Here, the justification solution is based on the point of last word space in the zone and not the right hand margin. Obviously these two parameters could be the same if the zone width were equal to one escapement unit. This would result in total justification of all lines. As pointed out earlier though, the wider the zone, the greater the degree of raggedness with the result being only the partial justification of some of the lines.

The calculation of the interword spacing referred to above is based on the minimum interword space size, in terms of escapement units, stored in register 60 and applied to justification computer 58 along line 61, and the count stored in register 54 divided by the count of the number of word spaces held in word space counter 47 minus one. This word space count is applied to justification computer 58 along line 50. The reason that one word spacecount is subtracted is to provide for the last word space counted within the measure.

As is the case in other justification systems, if there is a remainder, it is distributed, till exhausted, evenly among the word spaces closest to the left hand margin.

The interword spacing for partial justification is thus derived by adding the count stored in register 54 divided by the number of interword spaces to the width of the minimum interword space, with the remainder distributed as described, in order that when the line is printed, the last interword space within the measure appears in the zone.

From what has been said above, the result can be some partially justified lines in the case where the effective measure is defined by the point of last word space within the measure plus a multiple of the zone width such that the difference between the actual measure and the effective measure is less than the zone width. This will become more readily apparent when considered along with that part of the description related to FIGS. 2 5.

For purposes herein, the terms justified lines and partially justified lines (those having an altered measure) are to be considered essentially the same. These definitions for purposes of explanation vary when the control zone becomes larger than one escapement unit, but even then the output line is justified. The altered measure here is based on the multiple in register 54, determined by the contents of counter 12 exceeding the contents of subtract and hold unit 21 up to the contents of register 22. 4

With respect to the automatic carrier return which occurs when the measure is exceeded, which is the case when line 15 from compare unit 8 is up, it should be noted that the point at which the carrier return occurs is at the space immediately preceding the word which overflowed the measure. Thus, in the event that multiple word spaces occur in the zone either due to short words, a wide zone, or multiple word spaces in tabular material, the word space at which the carrier return occurs is the one nearest the end of the measure. This is accomplished by storing the current units count into the point of last word space counter 12 each time a word space within the measure occurs.

Additionally, a carrier return signal which appears on line 18 is also applied along line 36 to AND gate 38, which receives its other input from counter 12 along lines 13 and 35, to gate the point of carrier return along line 37 back to the reader control such that a new line begin .point is identified. l I

Log ically, the above can be described as follows: 1. Take no action until the measure is exceeded. 2. Carrier return at the point of lastword space within the measure after calculating or adjusting the value of the interword spaces to cause the point of last word space within the measure to fall within the zone if such adjustment or calculation is necessary.

For a more complete understanding of the system shown in FIG. 1, reference can be made to the remaining figures and first to FIG. 2 wherein there is shown an illustration of, an input line and an output line which would occur through operation of the subject system. In FIG. 2the input line is shown with a word space occurring in the zone between words C and D and with word D overflowing the measure. Upon application of this input line to the subject system, a carrier return occurs at the word space following word C and word D is then brought around onto the'following line.

In FIG. 3 there is illustrated the case where multiple word spaces occur inthe zone. As shown upon output, the system does not automatically cause a carrier return following a word space after word C, but instead causes a carrier return after word D, which is the word space nearest the right hand margin. Word E in FIG. 3 is then brought around to the following line. This illustrates that in the subject system that the first word space is not acted upon. Instead, the word space nearest to the right hand sideof the measure is the word space which is chosen.

In FIG. 4 there is illustrated the case where a relatively long word C is input and the word space following the long word C is at the overflow point. In this case, as illustrated, word C is printed as input.

In FIG. 5 there is shown the case where a'word D completely spans the zone and thus a multiple of the zone width (in this case, one zone width) is added to the sum of the minimum interword spaces, in terms of escapement units, and the total is distributed among the interword spaces thereby causing the last word space to fall in the zone. lt is to be noted in referring to FIG. 2,3, and 4, that with respect to the output lines, the word spaces used are of the minimum interword space size determined by the operator. Only in FIG. was it necessary to increase the word space size in order to end in the zone.

From a consideration of FIG. 1, it should now be obvious that the system implements the subject novel technique in which a variable width zone is set by the operator, the width of which will control the amount of unevenness on the right hand side of the output since all lines are caused to end in the zone, and this occurs in the absence of operator intervention. Thus any desired degree of raggedness can be obtained.

While the invention has been particularly shown and described with reference to several embodiments, it will be understood by those skilled in the art that various changes in form and detail may be made without department from the spirit and scope of the invention.

What is claimed is:

1. A system for automatically controlling, after set up, the alignment of output lines to be printed without requiring hyphenation decisions from character and space codes input to said system, said system comprising:

means for holding an operator selected measure count;

means for holding an operator selected control zone count;

means for holding a count equal to said measure count minus said control zone count;

means for holding an operator selected minimum interword space size count:

means for tabulating a running count of said character and space codes from the left hand margin of said output lines up to a point of last space which does not exceed said measure count;

means for holding a multiple of said control zone count;

means for tabulating a running count of said space codes from the left margin of said output lines up to said measure count; means for comparing said point of last space in said running count of said character and space codes for said output lines, which does not exceed said measure count, with said count equal to said measure count minus said control zone count; and

means upon said comparison 1) for causing a carrier return signal when said point of last space exceeds said count equal to said measure count minus said control zone count; and 2) when said point of last space does not exceed said count equal to said measure count minus said control zone count for adding, for justification purposes, a multiple of said control zone count to said minimum interword space size count for said running count of said space codes up to said point of last space for causing said point of last space to exceed said count equal to said measure count minus said control zone count.

2. A system according to claim 1 further including means for comparing a count of said character and space codes with said measure count upon each space code input to said system for determining when said measure count has been exceeded.

3. A system according to claim 2 further including means for gating a count for each space code input to said system to said means for tabulating a running count of said space codes when said character and space code count does not exceed said measure count.

4. A system according to claim 3 further including means for gating said count of said character and space codes up to said point of last space to said means for comparing said point of last space with said measure count minus said control zone count when said count of said character and space codes from said left margin exceed said measure count. 

1. A system for automatically controlling, after set up, the alignment of output lines to be printed without requiring hyphenation decisions from character and space codes input to said system, said system comprising: means for holding an operator selected measure count; means for holding an operator selected control zone count; means for holding a count equal to said measure count minus said control zone count; means for holding an operator selected minimum interword space size count: means for tabulating a running count of said character and space codes from the left hand margin of said output lines up to a point of last space which does not exceed said measure count; means for holding a multiple of said control zone count; means for tabulating a running count of said space codes from the left margin of said output lines up to said measure count; means for comparing said point of last space in said running count of said character and space codes for said output lines, which does not exceed said measure count, with said count equal to said measure count minus said control zone count; and means upon said comparison 1) for causing a carrier return signal when said point of last space exceeds said count equal to said measure count minus said control zone count; and 2) when said point of last space does not exceed said count equal to said measure count minus said control zone count for adding, for justification purposes, a multiple of said control zone count to said minimum interword space size count for said running count of said space codes up to said point of last space for causing said point of last space to exceed said count equal to said measure count minus said control zone count.
 2. A system according to claim 1 further including means for comparing a count of said character and space codes with said measure count upon each space code input to said system for determining when said measure count has been exceeded.
 3. A system according to claim 2 further including means for gating a count for each space code input to said system to said means for tabulating a running count of said space codes when said character and space code count does not exceed said measure count.
 4. A system according to claim 3 further including means for gating said count of said character and space codes up to said point of last space to said means for comparing said point of last space with said measure count minus said control zone count when said count of said character and space codes from said left margin exceed said measure count. 